With development of cloud computing and data centers, more services are migrated to data centers, and are executed on virtual machines (VMs). To satisfy network requirements of different services, a virtual switch that can be dynamically configured is introduced into a server. Although the virtual switch has high flexibility, its scalability and processing performance encounter a bottleneck due to a limited software processing capability.
A virtual switch usually runs in a kernel mode of a hypervisor or a VM monitor (VMM), directly receives a network data packet from a network interface card, and then forwards the network data packet to each VM based on a user-defined matching rule. Such a manner leads to a problem of high dependence of software of the virtual switch on the hypervisor/VMM. If commercial hypervisor/VMM software does not open a corresponding kernel interface to a software platform of a third-party virtual switch, the third-party virtual switch cannot run on the commercial hypervisor/VMM.